Masuk ke Dunia Backend Framework 🚀
Tekan → atau klik tombol › untuk mulai
Klik topik mana pun untuk langsung melompat ke slidenya 👇
Chef (Developer) memasak di dapur (Laravel) → hidangan (Website) diantar ke tamu (User)
Bayangkan kamu mau buka restoran. Daripada bikin dapur dari nol — beli kompor, atur pipa, pasang listrik — kamu sewa dapur profesional yang sudah lengkap.
Laravel adalah dapur itu: sebuah PHP Framework open-source yang sudah menyediakan semua peralatan agar kamu, sang chef, tinggal fokus memasak (menulis logika aplikasi).
PHP Murni vs Laravel — mana yang bikin hidup lebih mudah?
Pastikan dulu prasyarat ini sudah terpasang:
composer create-project laravel/laravel nama-project
cd nama-project
php artisan serve
💡 Setelah php artisan serve, buka localhost:8000 — halaman selamat datang Laravel akan muncul!
Kamu pesan (require) → Composer cari di toko (Packagist) → kurir antar paket ke proyekmu otomatis
Composer itu seperti aplikasi belanja online untuk kode. Kamu cukup bilang "aku butuh paket X", Composer yang carikan di toko (Packagist), unduh, dan pasang ke proyekmu.
{
"require": {
"php": "^8.1",
"laravel/framework": "^11.0"
}
}
Klik folder untuk buka/tutup • arahkan kursor untuk lihat fungsinya
Router → Controller → (Model ↔ Database) & (View) → Response
Setiap Model mewakili satu tabel di database 🗃️
<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Model;
class User extends Model
{
protected $fillable = ['name', 'email'];
}
Tabel users di database ↔ class User di PHP. Satu baris tabel = satu objek PHP. Inilah sihir ORM.
User::all(); // ambil semua user
User::find(1); // cari user id = 1
User::where('email', $e)->first();
Tampilan yang dilihat user — disusun seperti puzzle 🧩
@extends('layouts.app')
@section('content')
<h1>Halo, {{ $nama }}!</h1>
<p>Selamat datang di website-ku.</p>
@endsection
@extends meminjam kerangka layout induk, @section mengisi bagian tertentu, dan @yield (di layout) menyiapkan slot kosongnya.
Kubus M-V-C berputar — tiga sisi, satu kesatuan.
class UserController extends Controller
{
public function index()
{
$users = User::all(); // ambil dari Model
return view('users', [ // kirim ke View
'users' => $users
]);
}
}
Controller menerima request → ambil data dari Model → kirim ke View.
Routing ibarat GPS: URL yang diketik user = tujuan, Route = peta jalannya, Controller = sopir yang mengantar.
Route::get('/', [HomeController::class, 'index']);
Route::get('/about', [PageController::class, 'about']);
Route::post('/contact', [PageController::class, 'send']);
Route::resource('posts', PostController::class);
Kode Blade (kiri) berubah jadi HTML (kanan) 🔁
@foreach($produk as $p)
<li>{{ $p }}</li>
@endforeach
@if($login)
<p>Halo!</p>
@endif
<li>Baju</li>
<li>Celana</li>
<li>Topi</li>
<p>Halo!</p>
Coba ketik perintah di terminal mini ini, lalu Enter 👇
php artisan serve # jalankan server lokal
php artisan make:model # buat model
php artisan make:controller # buat controller
php artisan migrate # jalankan migrasi DB
php artisan route:list # lihat semua route
$ php artisan serve
INFO Server running on [http://127.0.0.1:8000].
Press Ctrl+C to stop the server
php artisan serve --port=8001Dari user klik tombol sampai data tampil — 7 tahap ⚡
Inilah yang akan kamu bangun nanti! 🏢
Sebuah website profil perusahaan dengan 4 halaman: Home, About, Services, dan Contact.
Klik tiap langkah untuk lihat detailnya 🗺️
Klik tiap cabang untuk ringkasannya 🧠
Centang tiap langkah saat selesai ✅
// routes/web.php
Route::get('/about', [PageController::class, 'about']);
// PageController.php
public function about() {
return view('about');
}
🗓️ Deadline: 2 minggu dari hari ini.
| Kriteria | Bobot |
|---|---|
| Struktur MVC benar | 30% |
| Blade template digunakan | 25% |
| Tampilan menarik | 20% |
| Routing lengkap | 15% |
| Video demo | 10% |
🎉 Selamat! Kamu sudah menamatkan BAB 8.